With the increasing use of technology, software products have replaced tedious human labour in almost all avenues. For example, software products are developed and implemented for carrying out monetary transactions, accounting, travel booking, hotel management, cab management, and a plethora of other such purposes.
Generally, software products are tested to ensure that the software performs the functions it is designed for. Software products are tested for functionality, bugs, and glitches in order to determine whether the software products meet required goals or not. Goals and objectives of the software products may be realized by defining product requirements associated with the software products. On the basis of the product requirements, the software product is engineered with reference to design, and architecture and the software product is developed. Further, to elicit the product requirements for the software product to be developed, various models and frameworks have been developed. Such frameworks and models facilitate in identifying the product requirements applicable for the software products.